package DigitalNetwork;

import java.util.ArrayList;

/** 
 * Kijelzo, mely a szimulacio eredmenyet juttatja el a felhasznalohoz.
 * <p>
 *
 * </p>
 *
 * @author Ableda Peter
 * @author Andrasi Istvan
 * @author Kamaras Karoly
 * @author Pora Szilard
 *
 * @version 1.0 Build 2011.04.17.
 */
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
public class LED extends Display {

	/** [Konstruktor]
	 * Letrehozza az inputs listat.
     *
     * @param _ID
     * @param x Az elem poziciojanak vizszintes komponense.
     * @param y Az elem poziciojanak fuggoleges komponense.
	 */
	//==========================================================================
	public LED(String ID_, int x, int y) {
        super(x,y);
		// Beallitjuk az ID-t.
		this.ID = ID_;

		// Letrehozzuk a bementi portok listajat.
		this.inputs = new ArrayList<PortIn>();
		// Letrehozzuk a bemenetet.
		inputs.add(new PortIn(this.ID + "_i0", this));

		// Ertesitunk.
		Main.printMessage("#" + this.getID() + " LED kimenet letrehozva");
	}
	//==========================================================================

	/**
	 * Vissza adja az elem ID-jet es a belso allapotat.
     * 
	 * @return String
	 */
	@Override
	//==========================================================================
	public String print() {
		return "#" + this.getID() + " LED -  "
			+ (this.inputs.get(0).getState() ? "1" : "0");
	}
	//==========================================================================

	/**
	 * A bemenetenek erteket adja vissza.
	 *
	 * @return this.inputs.get(0).getState() A bemenet erteke.
	 */
	//==========================================================================
	@Override
	public boolean getState() {
		return this.inputs.get(0).getState();
	}
	//==========================================================================

    /**
     * Vissza adja az adott elem tipusat.
	 *
	 * @return String Az elem tipusa.
	 */
	@Override
	//==========================================================================
	public String getType() {
		return "LED";
	}
	//==========================================================================
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

